#ifndef BSP_IO_H
#define BSP_IO_H



#define M_4G_PWRKEY(x)		gpio_bit_write(GPIOD, GPIO_PIN_2, (bit_status)(x))
#define M_4G_RESET_N(x)		gpio_bit_write(GPIOD, GPIO_PIN_3, (bit_status)(x))
#define M_4GPWR_EN(x)		gpio_bit_write(GPIOD, GPIO_PIN_5, (bit_status)(x))
#define M_3V3PWR_EN(x)		gpio_bit_write(GPIOD, GPIO_PIN_6, (bit_status)(x))
#define Work_LED(x)			gpio_bit_write(GPIOD, GPIO_PIN_12, (bit_status)(x))

#define MCU_POWEREN(x)		gpio_bit_write(GPIOE, GPIO_PIN_0, (bit_status)(x))
#define VCC_A1000_5V0_EN(x)	gpio_bit_write(GPIOE, GPIO_PIN_3, (bit_status)(x))
#define VCC_EXT_5V0_EN(x)	gpio_bit_write(GPIOE, GPIO_PIN_1, (bit_status)(x))
#define VCC_SYS_3V3_EN(x)	gpio_bit_write(GPIOE, GPIO_PIN_2, (bit_status)(x))
#define USB30Hub_PWR_EN(x)	gpio_bit_write(GPIOE, GPIO_PIN_7, (bit_status)(x))

#define FAN_CTRL(x)			gpio_bit_write(GPIOE, GPIO_PIN_14, (bit_status)(x))


#define GNSS_RSTN_3V3(x)	gpio_bit_write(GPIOE, GPIO_PIN_10, (bit_status)(x))


#define POWER_BUTTON_ST()	((RESET == gpio_input_bit_get(GPIOC, GPIO_PIN_12))?1:0)


void vGPIO_Init(void);



#endif
